package jlib.component.list
{
	import flash.display.Sprite;
	import flash.events.Event;
	
	import jlib.component.ISelectable;
	import jlib.component.button.IButton;
	import jlib.core.ICloneable;
	
	[Abstract]
	public class AbstractItem extends Sprite implements ISelectable, ICloneable {
		public function AbstractItem() { 
			if(Object(this).constructor == AbstractItem) throw new Error('Abstract Class 입니다.') 
		}
		[Abstract] public function setData($data:Object): void { throw new Error("구현해주세요.");}
		[Abstract] public function getData():Object { throw new Error('구현해주세요.'); }
		[Abstract] public function isSelected():Boolean { throw new Error('구현해주세요.'); }
		[Abstract] public function select(e:Object=null): void { throw new Error('구현해주세요'); }
		[Abstract] public function deselect(e:Object=null): void { throw new Error('구현해주세요'); }
		[Abstract] public function clone():Object { throw new Error('구현해주세요'); }
	}//c
}